// Message map struct
struct TMsgMap
{
	typedef LRESULT (*MSGPROC)(HWND hWnd, WPARAM wParam, LPARAM lParam);

	UINT		nMessage;
	MSGPROC		MsgProc;	
};

// How to define message 
//-----------------------------------------------------------------------------------------------------------------------------------------
// step1:  declare a message function
// step2:  define a message function
// step3:  set message map in MsgMapTable, eg: (message, function)
//*****************************************************************************************************************************************


//=========================================================================================================================================
// Message Map Medtho
//=========================================================================================================================================
LRESULT OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam);

LRESULT OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam);

LRESULT OnTimer(HWND hWnd, WPARAM wParam, LPARAM lParam);

LRESULT OnDestroy(HWND hWnd, WPARAM wParam, LPARAM lParam);




//=========================================================================================================================================
// Message Map Table
//=========================================================================================================================================
const TMsgMap MsgMapTable[] = {
	WM_CREATE,		OnCreate,
	WM_DESTROY,		OnDestroy,
	WM_PAINT,		OnPaint,
	WM_TIMER,		OnTimer
	

};